package cn.crc.model.base;

import java.io.Serializable;


/**
 * This is an object that contains data related to the blog_Member table.
 * Do not modify this class because it will be overwritten if the configuration file
 * related to this class is modified.
 *
 * @hibernate.class
 *  table="blog_Member"
 */

public abstract class BaseBlogMember  implements Serializable {

	public static String REF = "BlogMember";
	public static String PROP_MEM_HASHKEY = "MemHashkey";
	public static String PROP_MEM_POSTMESSAGENUMS = "MemPostmessagenums";
	public static String PROP_MEM_PASSWORD = "MemPassword";
	public static String PROP_MEM_LASTIP = "MemLastip";
	public static String PROP_MEM_POSTLOGS = "MemPostlogs";
	public static String PROP_MEM_SALT = "MemSalt";
	public static String PROP_MEM_LASTVISIT = "MemLastvisit";
	public static String PROP_MEM_QQ = "MemQq";
	public static String PROP_MEM_REGIP = "MemRegip";
	public static String PROP_MEM_LOCAL = "MemLocal";
	public static String PROP_MEM_REGTIME = "MemRegtime";
	public static String PROP_MEM_HIDEEMAIL = "MemHideemail";
	public static String PROP_MEM_STATUS = "MemStatus";
	public static String PROP_MEM_INTRO = "MemIntro";
	public static String PROP_MEM_NAME = "MemName";
	public static String PROP_MEM_HOMEPAGE = "MemHomepage";
	public static String PROP_MEM_POSTCOMMS = "MemPostcomms";
	public static String PROP_ID = "Id";
	public static String PROP_MEM_SEX = "MemSex";
	public static String PROP_MEM_EMAIL = "MemEmail";


	// constructors
	public BaseBlogMember () {
		initialize();		
	}

	//constructiors for all properties
	public BaseBlogMember(
		java.lang.String memHashkey,
		java.lang.Integer memPostmessagenums,
		java.lang.String memPassword,
		java.lang.String memLastip,
		java.lang.Integer memPostlogs,
		java.lang.String memSalt,
		java.util.Date memLastvisit,
		java.lang.String memQq,
		java.lang.String memRegip,
		java.lang.String memLocal,
		java.util.Date memRegtime,
		boolean memHideemail,
		java.lang.String memStatus,
		java.lang.String memIntro,
		java.lang.String memName,
		java.lang.String memHomepage,
		java.lang.Integer memPostcomms,
		java.lang.String id,
		java.lang.String memSex,
		java.lang.String memEmail){
		this.setMemHashkey(memHashkey);
		this.setMemPostmessagenums(memPostmessagenums);
		this.setMemPassword(memPassword);
		this.setMemLastip(memLastip);
		this.setMemPostlogs(memPostlogs);
		this.setMemSalt(memSalt);
		this.setMemLastvisit(memLastvisit);
		this.setMemQq(memQq);
		this.setMemRegip(memRegip);
		this.setMemLocal(memLocal);
		this.setMemRegtime(memRegtime);
		this.setMemHideemail(memHideemail);
		this.setMemStatus(memStatus);
		this.setMemIntro(memIntro);
		this.setMemName(memName);
		this.setMemHomepage(memHomepage);
		this.setMemPostcomms(memPostcomms);
		this.setId(id);
		this.setMemSex(memSex);
		this.setMemEmail(memEmail);
		initialize();		
	 }
	
	
	

	/**
	 * Constructor for primary key
	 */
	public BaseBlogMember (java.lang.String id) {
		this.setId(id);
		initialize();
	}

	/**
	 * Constructor for required fields
	 */
	public BaseBlogMember (
		java.lang.String id,
		boolean memHideemail) {

		this.setId(id);
		this.setMemHideemail(memHideemail);
		initialize();
	}

	protected void initialize () {}



	private int hashCode = Integer.MIN_VALUE;

	// primary key
	private java.lang.String id;

	// fields
	private java.lang.String memName;
	private java.lang.String memPassword;
	private java.lang.String memSalt;
	private java.lang.String memSex;
	private java.lang.String memEmail;
	private boolean memHideemail;
	private java.lang.String memQq;
	private java.lang.String memHomepage;
	private java.lang.String memLocal;
	private java.util.Date memRegtime;
	private java.lang.String memRegip;
	private java.lang.String memStatus;
	private java.lang.Integer memPostlogs;
	private java.lang.Integer memPostcomms;
	private java.lang.Integer memPostmessagenums;
	private java.lang.String memIntro;
	private java.util.Date memLastvisit;
	private java.lang.String memLastip;
	private java.lang.String memHashkey;



	/**
	 * Return the unique identifier of this class
     * @hibernate.id
     *  generator-class="native"
     *  column="mem_ID"
     */
	public java.lang.String getId () {
		return id;
	}

	/**
	 * Set the unique identifier of this class
	 * @param id the new ID
	 */
	public void setId (java.lang.String id) {
		this.id = id;
		this.hashCode = Integer.MIN_VALUE;
	}




	/**
	 * Return the value associated with the column: mem_Name
	 */
	public java.lang.String getMemName () {
		return memName;
	}

	/**
	 * Set the value related to the column: mem_Name
	 * @param memName the mem_Name value
	 */
	public void setMemName (java.lang.String memName) {
		this.memName = memName;
	}



	/**
	 * Return the value associated with the column: mem_Password
	 */
	public java.lang.String getMemPassword () {
		return memPassword;
	}

	/**
	 * Set the value related to the column: mem_Password
	 * @param memPassword the mem_Password value
	 */
	public void setMemPassword (java.lang.String memPassword) {
		this.memPassword = memPassword;
	}



	/**
	 * Return the value associated with the column: mem_salt
	 */
	public java.lang.String getMemSalt () {
		return memSalt;
	}

	/**
	 * Set the value related to the column: mem_salt
	 * @param memSalt the mem_salt value
	 */
	public void setMemSalt (java.lang.String memSalt) {
		this.memSalt = memSalt;
	}



	/**
	 * Return the value associated with the column: mem_Sex
	 */
	public java.lang.String getMemSex () {
		return memSex;
	}

	/**
	 * Set the value related to the column: mem_Sex
	 * @param memSex the mem_Sex value
	 */
	public void setMemSex (java.lang.String memSex) {
		this.memSex = memSex;
	}



	/**
	 * Return the value associated with the column: mem_Email
	 */
	public java.lang.String getMemEmail () {
		return memEmail;
	}

	/**
	 * Set the value related to the column: mem_Email
	 * @param memEmail the mem_Email value
	 */
	public void setMemEmail (java.lang.String memEmail) {
		this.memEmail = memEmail;
	}



	/**
	 * Return the value associated with the column: mem_HideEmail
	 */
	public boolean isMemHideemail () {
		return memHideemail;
	}

	/**
	 * Set the value related to the column: mem_HideEmail
	 * @param memHideemail the mem_HideEmail value
	 */
	public void setMemHideemail (boolean memHideemail) {
		this.memHideemail = memHideemail;
	}



	/**
	 * Return the value associated with the column: mem_QQ
	 */
	public java.lang.String getMemQq () {
		return memQq;
	}

	/**
	 * Set the value related to the column: mem_QQ
	 * @param memQq the mem_QQ value
	 */
	public void setMemQq (java.lang.String memQq) {
		this.memQq = memQq;
	}



	/**
	 * Return the value associated with the column: mem_HomePage
	 */
	public java.lang.String getMemHomepage () {
		return memHomepage;
	}

	/**
	 * Set the value related to the column: mem_HomePage
	 * @param memHomepage the mem_HomePage value
	 */
	public void setMemHomepage (java.lang.String memHomepage) {
		this.memHomepage = memHomepage;
	}



	/**
	 * Return the value associated with the column: mem_Local
	 */
	public java.lang.String getMemLocal () {
		return memLocal;
	}

	/**
	 * Set the value related to the column: mem_Local
	 * @param memLocal the mem_Local value
	 */
	public void setMemLocal (java.lang.String memLocal) {
		this.memLocal = memLocal;
	}



	/**
	 * Return the value associated with the column: mem_RegTime
	 */
	public java.util.Date getMemRegtime () {
		return memRegtime;
	}

	/**
	 * Set the value related to the column: mem_RegTime
	 * @param memRegtime the mem_RegTime value
	 */
	public void setMemRegtime (java.util.Date memRegtime) {
		this.memRegtime = memRegtime;
	}



	/**
	 * Return the value associated with the column: mem_RegIP
	 */
	public java.lang.String getMemRegip () {
		return memRegip;
	}

	/**
	 * Set the value related to the column: mem_RegIP
	 * @param memRegip the mem_RegIP value
	 */
	public void setMemRegip (java.lang.String memRegip) {
		this.memRegip = memRegip;
	}



	/**
	 * Return the value associated with the column: mem_Status
	 */
	public java.lang.String getMemStatus () {
		return memStatus;
	}

	/**
	 * Set the value related to the column: mem_Status
	 * @param memStatus the mem_Status value
	 */
	public void setMemStatus (java.lang.String memStatus) {
		this.memStatus = memStatus;
	}



	/**
	 * Return the value associated with the column: mem_PostLogs
	 */
	public java.lang.Integer getMemPostlogs () {
		return memPostlogs;
	}

	/**
	 * Set the value related to the column: mem_PostLogs
	 * @param memPostlogs the mem_PostLogs value
	 */
	public void setMemPostlogs (java.lang.Integer memPostlogs) {
		this.memPostlogs = memPostlogs;
	}



	/**
	 * Return the value associated with the column: mem_PostComms
	 */
	public java.lang.Integer getMemPostcomms () {
		return memPostcomms;
	}

	/**
	 * Set the value related to the column: mem_PostComms
	 * @param memPostcomms the mem_PostComms value
	 */
	public void setMemPostcomms (java.lang.Integer memPostcomms) {
		this.memPostcomms = memPostcomms;
	}



	/**
	 * Return the value associated with the column: mem_PostMessageNums
	 */
	public java.lang.Integer getMemPostmessagenums () {
		return memPostmessagenums;
	}

	/**
	 * Set the value related to the column: mem_PostMessageNums
	 * @param memPostmessagenums the mem_PostMessageNums value
	 */
	public void setMemPostmessagenums (java.lang.Integer memPostmessagenums) {
		this.memPostmessagenums = memPostmessagenums;
	}



	/**
	 * Return the value associated with the column: mem_Intro
	 */
	public java.lang.String getMemIntro () {
		return memIntro;
	}

	/**
	 * Set the value related to the column: mem_Intro
	 * @param memIntro the mem_Intro value
	 */
	public void setMemIntro (java.lang.String memIntro) {
		this.memIntro = memIntro;
	}



	/**
	 * Return the value associated with the column: mem_lastVisit
	 */
	public java.util.Date getMemLastvisit () {
		return memLastvisit;
	}

	/**
	 * Set the value related to the column: mem_lastVisit
	 * @param memLastvisit the mem_lastVisit value
	 */
	public void setMemLastvisit (java.util.Date memLastvisit) {
		this.memLastvisit = memLastvisit;
	}



	/**
	 * Return the value associated with the column: mem_LastIP
	 */
	public java.lang.String getMemLastip () {
		return memLastip;
	}

	/**
	 * Set the value related to the column: mem_LastIP
	 * @param memLastip the mem_LastIP value
	 */
	public void setMemLastip (java.lang.String memLastip) {
		this.memLastip = memLastip;
	}



	/**
	 * Return the value associated with the column: mem_hashKey
	 */
	public java.lang.String getMemHashkey () {
		return memHashkey;
	}

	/**
	 * Set the value related to the column: mem_hashKey
	 * @param memHashkey the mem_hashKey value
	 */
	public void setMemHashkey (java.lang.String memHashkey) {
		this.memHashkey = memHashkey;
	}




	public boolean equals (Object obj) {
		if (null == obj) return false;
		if (!(obj instanceof cn.crc.model.BlogMember)) return false;
		else {
			cn.crc.model.BlogMember blogMember = (cn.crc.model.BlogMember) obj;
			if (null == this.getId() || null == blogMember.getId()) return false;
			else return (this.getId().equals(blogMember.getId()));
		}
	}

	public int hashCode () {
		if (Integer.MIN_VALUE == this.hashCode) {
			if (null == this.getId()) return super.hashCode();
			else {
				String hashStr = this.getClass().getName() + ":" + this.getId().hashCode();
				this.hashCode = hashStr.hashCode();
			}
		}
		return this.hashCode;
	}


	public String toString () {
		return super.toString();
	}


}